<template>
  <div class="todo-header">
    <input type="text" placeholder="请输入你的任务名称，按回车键确认" @keyup.enter="addItem" />
  </div>
</template>

<script>
export default {
  name: "Header",
  props: {
    addTodo: {
      type: Function,
      required: true
    },
    todoList: {
      type: Array,
      required: true,
      default: () => []
    }
  },
  methods: {
    addItem(e) {
      const content = e.target.value.trim();
      //判断内容是否重复，some： 返回布尔值
      const isRepeat = this.todoList.some(item => item.content === content);
      if (!content || isRepeat) {
        alert('内容不能为空，且标题不能重复！');
        return;
      }
      const newItem = {id: Date.now(), done: false, content}
      this.addTodo(newItem);
      //清空输入框内容
      e.target.value = "";
    }
  }
};
</script>

<style scoped>
/*header*/
.todo-header input {
  width: 560px;
  height: 28px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 4px 7px;
}

.todo-header input:focus {
  outline: none;
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075),
    0 0 8px rgba(82, 168, 236, 0.6);
}
</style>
